Data compression is used in communications and computer networking to store, transmit, and reproduce information efficiently. It finds particular application in the encoding of images, audio and video. Common image compression formats include JPEG, TIFF, and PNG. A newly-developed video coding standard is the ITU-T H.265/HEVC standard. Other video coding formats include the VP8 and VP9 formats developed by Google Inc. Evolutions to all of these standards and formats are under active development.
All of these image and video coding standards and formats are based on predictive coding that create a prediction of data to be coded, then encode the error in the prediction (often called the residual) for transmission to a decoder as a bitstream. The decoder then makes the same prediction and adjusts it by the reconstructed error decoded from the bitstream. The lossless data compression of the error at the encoder often includes a spectral transform of the error to create blocks of transform domain coefficients. This is typically accompanied by lossy quantization. The reverse operations are performed at the decoder to reconstruct the error/residual. In many coding schemes, this data, plus side information for making the predictions (e.g. intra-coding mode or inter-coding motion vectors) is usually encoded using binary arithmetic coding (BAC). This means that the non-binary portions of the data (termed “symbols” herein) may need to be binarized to create a stream of binary data for the BAC engine to encode. In some encoders/decoders, multi-level arithmetic coders may be used instead of binary arithmetic coders, in which case the binarizer is embedded within the multi-level arithmetic coder.
In existing coding schemes, the binarizer is prescribed by the standard. For example, in H.265/HEVC, the binarization scheme (CABAC) is very closely integrated with the context modeling. In VP8/VP9, the binarization of “tokens” (symbols that signal the magnitude of quantized coefficients) is carried out using a pre-defined coding tree.
Similar reference numerals may have been used in different figures to denote similar components.